FIG. 1 illustrates the configuration of the power supply to a central processing unit (CPU) in a typical computer system. The system receives an AC power supply from the mains or other appropriate source, which is passed into an AC/DC converter 101. This outputs a moderate DC voltage, typically about 12 volts, in order to power the various components within the computer system, for example the hard disk drive, input/output devices, and so on.
Frequently however, the CPU 103 requires a somewhat lower voltage than that provided by the AC/DC converter 101. Therefore, a DC/DC converter 102 is interposed between the AC/DC converter 101 and CPU 103. This DC/DC converter 102 receives the 12 volt supply from DC/DC converter 102, and outputs a DC supply at a suitably lower voltage (typically about 1.5 volts, depending on the particular CPU 103 in question).
Many modern CPUs provide an output control signal that indicates the particular voltage level that should be supplied to the CPU. The rationale for this is that the optimum supply voltage for a given CPU 103 may vary slightly, depending upon a number of factors. For example, if a particular type of CPU is available in two versions, one with a higher clock speed than the other, then a slightly increased supply voltage may be required for peak performance at the higher clock speed (compared to the supply voltage normally used at the lower clock speed).
It is generally desirable that the motherboard or other circuit incorporating the CPU is able to support both versions of the CPU, despite their slightly different supply voltage requirements. Moreover, it is most convenient if this dual support is provided automatically, rather than having to make hardware modifications to the motherboard in order to change from one CPU version to another. This simplifies inventory management, in that only a single standard motherboard is required to operate with both CPU versions. Furthermore, a potential upgrade path is enabled, whereby the slower CPU version may be replaced with the faster CPU version on a given motherboard.
The control of the CPU supply voltage is accomplished by having a setting within the CPU itself that indicates the optimum voltage supply level for that particular CPU. This setting is then used to generate a digital voltage ID (VID) 105 output signal. The VID signal 105 is passed back to DC/DC converter 102, and used in turn to control the level of power supply voltage provided to the CPU 103.
In one particular embodiment, VID signal 105 is implemented as a five-bit code. The DC/DC converter 102 then contains a look-up table, which maps the various possible five-bit digital VID codes 105 received from the CPU 103 to a corresponding voltage level. The DC/DC converter 102 then provides the CPU 103 with the supply voltage requested by the CPU 103 (i.e. as determined by the VID code 105). It will be appreciated that this allows any CPU 103 to be used with a given DC/DC converter 102, provided that the CPU 103 and DC/DC converter 102 share the same look-up table to transform the VID code into a supply voltage level.
Note that in some systems, the CPU generates two VID signals. The first VID signal is controlled by hardware within the CPU, and is used to determine the supply voltage for the CPU 103 when the system is first powered on. Subsequently, a separate VID signal is used, which is controlled by software running on the CPU. (It will be appreciated that this software-controlled VID is not available at system start-up, when there is not yet software loaded into CPU 103, hence the need for the initial hardware VID signal).
The software-controlled VID allows the CPU to specify its supply voltage in a more sophisticated manner than the hardware VID signal, since the VID signal 105 can be adjusted according to particular parameters affecting the CPU. For example, if the CPU detects that its temperature is rising, then it may adjust the VID code so that its power supply voltage is lowered. Another possibility is that in a mobile computing environment, the CPU may decide to reduce its supply voltage and clock frequency in order to save power, and hence to conserve battery strength. The lowering of supply voltage can be accomplished by the CPU outputting an appropriate (reduced) VID code 105.
The configuration of FIG. 1 is generally satisfactory for normal operation of the CPU 103 and other components of the system. Nevertheless, there can be circumstances when it is desired to take the system deliberately slightly outside its standard operating regime. One typical reason for wanting to do this is for testing purposes. However, because the CPU in effect controls its own supply voltage via the VID signal, it is difficult to operate the CPU at anything other than the indicated voltage.